Historically, the execution of trades between participants in financial markets has been governed by various agreements between the parties that determine whether a particular trade can be executed. With the advent of online trading exchanges, these agreements have typically been “hard coded” into a set of trading rules that attempt to enforce the business terms of the agreements. As such, modeling and maintaining a particular market (or a series of markets) having multiple participants and rules becomes a difficult task.
One key function within a market is to be able to determine the tradability of a particular order or executability of a trade, as in fact there are many different reasons why a trade may not be executed. Existing trading systems have limited capabilities with respect to the determination of the tradability of orders between parties in the market. For example, systems that are limited to trading cleared instruments may only consider clearing house membership rules as a constraint on the trade. Similarly, systems that trade over the counter (“OTC”) may only enforce certain credit-based constraints.
Furthermore, tasks such as finding intermediary parties to complete trades between parties (referred to as “sleeving”) when a direct trade is either impossible or less than desirable (e.g., when there is no credit agreement between the trading parties or one or both of the trading parties wish to remain anonymous) are currently performed manually by brokers, thus adding time delays and costs to the trading process. Techniques and supporting systems for automating these tasks and indicating trade status in real-time to the traders would automate what is currently a manual procedure, and as a result greatly increase the liquidity and efficiency of the market by allowing previously unachievable flexibility.